export default {};
// 需求： 调用函数时获取参数的长度
/* 
泛型约束
1. 指定更加具体的类型 ---  例如要求传进来是 数组
2. 添加约束 ---  保证传递过来的参数，一定符合某些条件即可
*/
// 可以把约束条件定义好
interface Length {
  length: number;
}

const fn = <T extends Length>(value: T) => {
  console.log(value, value.length);
  return value;
};
// fn(10);
fn([]);
fn('abc');
fn({ length: 10 });
